package com.wkbb.sports.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.wkbb.sports.utils.DateJacksonConverter;
import com.wkbb.sports.utils.DateJacksonSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

@Data
public class TrainReportDto {

    @ApiModelProperty(value = "ID")
    private Long id;

    @ApiModelProperty(value = "训练ID")
    private Long trainId;

    @ApiModelProperty(value = "项目ID")
    private Long projectId;

    @ApiModelProperty(value = "项目名称")
    private String projectName;

    @ApiModelProperty(value = "项目类型(1-跳绳,2-跑步)")
    private Byte projectKind;

    @ApiModelProperty(value = "评分标准类型(1-国家标准,2-地方标准,3-自定义标准)")
    private Byte markType;

    @ApiModelProperty(value = "项目模式(5:800米跑步 6:1000米跑步)")
    private Byte modelType;

    @ApiModelProperty(value = "单位")
    private String unit;

    @ApiModelProperty(value = "训练日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date trainDate;

    @ApiModelProperty(value = "开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    @ApiModelProperty(value = "结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    @ApiModelProperty(value = "学校ID")
    private Long orgId;

    @ApiModelProperty(value = "年级ID")
    private Long gradeId;

    @ApiModelProperty(value = "年级名称")
    private String gradeName;

    @ApiModelProperty(value = "班级ID")
    private Long classId;

    @ApiModelProperty(value = "班级名称")
    private String className;

    @ApiModelProperty(value = "老师ID")
    private Long teacherId;

    @ApiModelProperty(value = "学生ID")
    private Long studentId;

    @ApiModelProperty(value = "学生名称")
    private String studentName;

    @ApiModelProperty(value = "性别(1男2女)")
    private Byte sex;

    @ApiModelProperty(value = "学号")
    private String studentNo;

    @ApiModelProperty(value = "标准成绩")
    private String achievement;

    @ApiModelProperty(value = "成绩等级：1优秀 2良好 3及格 4不及格")
    private int scoreLevel;

    @ApiModelProperty(value = "得分")
    private Double score;

    @ApiModelProperty(value = "加分项得分")
    private Double plusScore;

    @ApiModelProperty(value = "次数提升空间")
    private Integer improveCount;

    @ApiModelProperty(value = "分数提升空间")
    private Integer improveScore;

    @ApiModelProperty(value = "家长消息发送标识")
    private Byte familySendFlag;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "修改时间")
    private Date updateTime;

}
